<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<base href="../../../" />
		<script src="page.js"></script>
		<link type="text/css" rel="stylesheet" href="page.css" />
	</head>
	<body>
		<h1>[name]</h1>

		<p class="desc">
			A geometric line segment represented by a start and end point.
		</p>

		<h2>Constructor</h2>

		<h3>[name]( [param:Vector3 start], [param:Vector3 end] )</h3>
		<p>
			[page:Vector3 start] - Start of the line segment. Default is `(0, 0,
			0)`.<br />
			[page:Vector3 end] - End of the line segment. Default is `(0, 0, 0)`.<br /><br />

			Creates a new [name].
		</p>

		<h2>Properties</h2>

		<h3>[property:Vector3 start]</h3>
		<p>[page:Vector3] representing the start point of the line.</p>

		<h3>[property:Vector3 end]</h3>
		<p>[page:Vector3] representing the end point of the line.</p>

		<h2>Methods</h2>

		<h3>[method:this applyMatrix4]( [param:Matrix4 matrix] )</h3>
		<p>Applies a matrix transform to the line segment.</p>

		<h3>[method:Vector3 at]( [param:Float t], [param:Vector3 target] )</h3>
		<p>
			[page:Float t] - Use values 0-1 to return a position along the line
			segment. <br />
			[page:Vector3 target] — the result will be copied into this Vector3.<br /><br />

			Returns a vector at a certain position along the line. When [page:Float t]
			= 0, it returns the start vector, and when [page:Float t] = 1 it returns
			the end vector.<br />
		</p>

		<h3>[method:Line3 clone]()</h3>
		<p>
			Returns a new [page:Line3] with the same [page:.start start] and
			[page:.end end] vectors as this one.
		</p>

		<h3>
			[method:Vector3 closestPointToPoint]( [param:Vector3 point], [param:Boolean clampToLine], [param:Vector3 target] )
		</h3>
		<p>
			[page:Vector3 point] - return the closest point on the line to this
			point.<br />
			[page:Boolean clampToLine] - whether to clamp the returned value to the
			line segment.<br />
			[page:Vector3 target] — the result will be copied into this Vector3.<br /><br />

			Returns the closets point on the line. If [page:Boolean clampToLine] is
			true, then the returned value will be clamped to the line segment.
		</p>

		<h3>
			[method:Float closestPointToPointParameter]( [param:Vector3 point], [param:Boolean clampToLine] )
		</h3>
		<p>
			[page:Vector3 point] - the point for which to return a point parameter.
			<br />
			[page:Boolean clampToLine] - Whether to clamp the result to the range `[0,
			1]`.<br /><br />

			Returns a point parameter based on the closest point as projected on the
			line segment. If [page:Boolean clampToLine] is true, then the returned
			value will be between `0` and `1`.
		</p>

		<h3>[method:this copy]( [param:Line3 line] )</h3>
		<p>
			Copies the passed line's [page:.start start] and [page:.end end] vectors
			to this line.
		</p>

		<h3>[method:Vector3 delta]( [param:Vector3 target] )</h3>
		<p>
			[page:Vector3 target] — the result will be copied into this Vector3.<br /><br />

			Returns the delta vector of the line segment ( [page:.end end] vector
			minus the [page:.start start] vector).
		</p>

		<h3>[method:Float distance]()</h3>
		<p>
			Returns the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean distance] 
			(straight-line distance) between the line's
			[page:.start start] and [page:.end end] points.
		</p>

		<h3>[method:Float distanceSq]()</h3>
		<p>
			Returns the square of the
			[link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean distance]
			(straight-line distance) between the line's [page:.start start] and
			[page:.end end] vectors.
		</p>

		<h3>[method:Boolean equals]( [param:Line3 line] )</h3>
		<p>
			[page:Line3 line] - [page:Line3] to compare with this one.<br /><br />

			Returns true if both line's [page:.start start] and [page:.end end] points
			are equal.
		</p>

		<h3>[method:Vector3 getCenter]( [param:Vector3 target] )</h3>
		<p>
			[page:Vector3 target] — the result will be copied into this Vector3.<br /><br />

			Returns the center of the line segment.
		</p>

		<h3>[method:this set]( [param:Vector3 start], [param:Vector3 end] )</h3>
		<p>
			[page:Vector3 start] - set the [page:.start start point] of the line.<br />
			[page:Vector3 end] - set the [page:.end end point] of the line.<br /><br />

			Sets the start and end values by copying the provided vectors.
		</p>

		<h2>Source</h2>

		<p>
			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
		</p>
	</body>
</html>
